package com.gshrms.setting.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gshrms.setting.domain.StaffInfoTable;
import com.gshrms.setting.domain.StaffInfoField;
import org.apache.ibatis.annotations.Mapper;

/**
 * 明细表Mapper接口
 * 
 * @author ruoyi
 * @date 2024-11-13
 */
@Mapper
public interface StaffInfoTableMapper extends BaseMapper<StaffInfoTable>
{
    /**
     * 查询明细表
     * 
     * @param tableId 明细表主键
     * @return 明细表
     */
    public StaffInfoTable selectStaffInfoTableByTableId(Long tableId);

    /**
     * 查询明细表列表
     * 
     * @param staffInfoTable 明细表
     * @return 明细表集合
     */
    public List<StaffInfoTable> selectStaffInfoTableList(StaffInfoTable staffInfoTable);

    /**
     * 新增明细表
     * 
     * @param staffInfoTable 明细表
     * @return 结果
     */
    public int insertStaffInfoTable(StaffInfoTable staffInfoTable);

    /**
     * 修改明细表
     * 
     * @param staffInfoTable 明细表
     * @return 结果
     */
    public int updateStaffInfoTable(StaffInfoTable staffInfoTable);

    /**
     * 删除明细表
     * 
     * @param tableId 明细表主键
     * @return 结果
     */
    public int deleteStaffInfoTableByTableId(Long tableId);

    /**
     * 批量删除明细表
     * 
     * @param tableIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteStaffInfoTableByTableIds(Long[] tableIds);

    /**
     * 批量删除自定义字段
     * 
     * @param tableIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteStaffInfoFieldByTableIds(Long[] tableIds);
    
    /**
     * 批量新增自定义字段
     * 
     * @param staffInfoFieldList 自定义字段列表
     * @return 结果
     */
    public int batchStaffInfoField(List<StaffInfoField> staffInfoFieldList);
    

    /**
     * 通过明细表主键删除自定义字段信息
     * 
     * @param tableId 明细表ID
     * @return 结果
     */
    public int deleteStaffInfoFieldByTableId(Long tableId);
}
